Specifying Reusable Aspects
نویسندگان
چکیده
Aspect oriented (AO) programming enables designers and developers to manage, in a more modular fashion, implementations of crosscutting concerns (CCCs) that might be scattered or tangled if AO techniques were not utilized. Our interest in this paper is on considering techniques for specifying precise properties of aspects. In particular, we are interested in specifying reusable aspects; i.e., aspects that correspond to CCCs that occur in many systems and that can be encoded as abstract aspects that can then be reused in various systems where the particular CCC is applicable. Although there has been much work on issues related to reasoning about aspects and the behaviors of AO systems, specifying reusable abstract aspects seems to have received little attention. We adopt the following approach to specifying reusable aspects and how they are specialized for use in particular systems. We specify a reusable aspects in terms of a contract; the contract will be written in terms of abstraction concepts that will correspond to portions that are left abstract in the reusable aspect. This contract will be specialized by a subcontract corresponding to the subaspect that defines how the abstract aspect is specialized for use in a given system. Whileaspect is specialized for use in a given system. While the aspect contract is applicable to all systems built using the reusable aspect, the contract plus the subcontract define the behavior corresponding to the given system. We illustrate the approach by applying it to a simple example.
منابع مشابه
Reusable Aspect Models
This paper presents an approach for specifying reusable aspect models that define structure (using class diagrams) and behavior (using sequence diagrams). The high degree of reusability of the aspect models is demonstrated by modeling the design of 8 inter-dependent aspects of the AspectOptima case study. Based on this experience, several modeling language features that we deem essential to sup...
متن کاملResearch Issues in Characterizing the Performance of Reusable Software Components
The software reuse practices of many organizations could be described as “ad hoc,” at best. Some reuse efforts do not consider even basic concepts such as completely specifying or correctly verifying reusable code. Those organizations that do attempt to specify formally their reusable assets often do so at the expense of neglecting issues concerned with performance. The area of Software Perform...
متن کاملAnalyzing and Specifying Reusable Security Requirements
A system cannot have high assurance if it has poor security, and thus, requirements for high assurance systems will logically include security requirements as well as availability, reliability, and robustness requirements. Unlike typical functional requirements, security requirements can potentially be highly reusable, especially if specified as instances of reusable templates. This paper discu...
متن کاملEngineering Languages for Specifying Product-Derivation Processes in Software Product Lines
The goal of a Software Product Line (SPL) is to create a set of reusable software assets for the rapid production of a software systems family aimed at a specific market segment. The main objective of SPL engineering is to construct, as automatically as possible, specific products after selecting the particular set of features that must be included in them. Unlike traditional engineering of sin...
متن کاملSolving the modeling problems of object-oriented languages by composing multiple aspects using composition filters
Building software from reusable components is considered important in reducing development costs. Object-oriented languages such as C++, Smalltalk and Java, however, are not capable of expressing certain aspects of applications in a reusable way. Software engineers may experience difficulties in composing and reusing applications from components, for example if components implement code for mul...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009